<script>
import isEmpty from 'lodash/isEmpty';
import * as loginApi from '@/common/apis/login-api.js';

export default {
    globalData: {
        content: '',
        vehicleData: {},
		tempDeptId:'',
		tempCustomerId:'',
		deptchose:false,
		//记录操作开始时间
		taskStartTime:0,
		objType:'',//目标类型：1-秒杀 2-集客 3-同行 4-抽奖 8-方案
		objId:'',//目标主键
		taskObjId:'',//任务id
		personnelType:'',//1员工2渠道
		personnelId:'',//人员主键
    },
    onLaunch: function () {
        console.log('App Launch');
        // console.log('版本号: 2.1.1');
		this.$store.dispatch('user/wxLogin');//获取openid
		this.checkUpdate();
    },
    onShow: function () {
        console.log('App Show');
		
		let openId = uni.getStorageSync('openId')
		if(!uni.$u.test.isEmpty(openId)){
			this.$store.commit('user/saveOpenid', openId)
		}
		
		let userInfo = uni.getStorageSync('userInfo')
		if(!uni.$u.test.isEmpty(userInfo)){
			this.$store.commit('user/saveUserInfo', userInfo)
		}
		
		let deptId = uni.getStorageSync('deptId')
		if(!uni.$u.test.isEmpty(deptId)){
			this.$store.commit('user/savedeptId', deptId)
		}
		
		
        if (!isEmpty(this.$store.state.user.openid)) {
            loginApi.visit({
                type: 1,
                openid: this.$store.state.user.openid,
            });
        }
		
		loginApi.getDeptChoseFlag().then(res=>{
			let flag = 1 == res;
			console.log('是否可以切换门店', flag);
			getApp().globalData.deptchose = flag;
			this.$store.commit('user/saveDeptChoseFlag', flag);
			setTimeout(()=>{
				uni.$emit('candeptchose', flag);
			}, 1000)
		}).catch(e=>{
			getApp().globalData.deptchose = false;
			this.$store.commit('user/saveDeptChoseFlag', false);
			
			setTimeout(()=>{
				uni.$emit('candeptchose', false);
			}, 1000)
		})
    },
    onHide: function () {
        console.log('App Hide');
        if (!isEmpty(this.$store.state.user.openid)) {
            loginApi.visit({
                type: 2,
                openid: this.$store.state.user.openid,
            });
        }
    },
	methods:{
		checkUpdate(){
			// 获取小程序更新机制兼容 
			if (uni.canIUse('getUpdateManager')) {
				const updateManager = uni.getUpdateManager()
				// 检查是否有新版本发布
				updateManager.onCheckForUpdate(function(res) {
					if (res.hasUpdate) {
						//小程序有新版本，则静默下载新版本，做好更新准备
						updateManager.onUpdateReady(function() {
							uni.showModal({
								title: '更新提示',
								content: '新版本已经准备好，是否重启应用？',
								success: function(res) {
									if (res.confirm) {
										//新的版本已经下载好，调用 applyUpdate 应用新版本并重启
										updateManager.applyUpdate()
									} else if (res.cancel) {
										//如果需要强制更新，则给出二次弹窗，如果不需要，则这里的代码都可以删掉了
										uni.showModal({
											title: '温馨提示',
											content: '我们已经做了新的优化，请及时更新哦~',
											showCancel: false, //隐藏取消按钮，也可显示，取消会走res.cancel，然后从新开始提示
											success: function(res) {
												//第二次提示后，强制更新           
												if (res.confirm) {
													// 新的版本已经下载好，调用 applyUpdate 应用新版本并重启
													updateManager.applyUpdate()
												} else if (res.cancel) {
													//重新回到版本更新提示
													autoUpdate()
												}
											}
										})
									}
								}
							})
						})
						  // 新的版本下载失败
						updateManager.onUpdateFailed(function() {
							uni.showModal({
								title: '温馨提示',
								content: '新版本已经上线，请您删除当前小程序，重新搜索打开',
							})
						})
					}
				})
			} else {
				// 提示用户在最新版本的客户端上体验
				uni.showModal({
					title: '温馨提示',
					content: '当前微信版本过低，可能无法使用该功能，请升级到最新版本后重试。'
				})
			}
		}
	}
};
</script>

<style lang="scss">
@import "@/uni_modules/uview-ui/index.scss";
@import "@/common/globalClass.scss";
</style>
